{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf350
{\fonttbl\f0\fswiss\fcharset77 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural

\f0\fs24 \cf0 John Conway's Game of Life in GLSL.\
\
The red, green, and blue color channels each contain an independent Game of Life.  A texture is used to store the current state of the simulation.  The next generation of the simulation is rasterized right into the framebuffer via GLSL, and then copied back to that texture.  Any extra data that ends up in the framebuffer will affect the simulation.  Any cells which stagnate in a live state will slowly fade to a lower brightness so that active areas are highlighted.  Unlike most efficient CPU versions of Life, this implementation does not include optimizations to process only those cells who have changed, but even so it runs pretty fast on a decent GPU.\
\
Resizing the application window, extra junk (aka cells of Life!) will appear on the edges of the simulation.  We thought this was neat so we left it in.\
\
}